package com.emm.yixun.common.model.pmo;

import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;

import com.alibaba.fastjson.annotation.JSONField;
import com.emm.yixun.common.model.pmo.DynamiSalesIndustData;

//项目动态销售数据
public class DynamiSalesData {
	// 数据月份时间标识，格式：yyyymm
	private String month;
	// 业态属性数据列表，如果level取值project时，该字段可为空
	private List<DynamiSalesIndustData> indust;
	// 目标货值
	private List<TargetValue> targetValue;
	// 动态货值
	private Double dynamiValue;
	// 动态货值偏差原因说明，当动态货值对比目标货值，偏差幅度较大时，需销售软件提供原因说明
	private String reasonDynamiValueDeviat;
	// 实际销售额，单位：万元。
	private Double actualSalesAmount;
	// 销售额偏差原因说明
	private String reasonActualSalesDeviat;
	// 实际回款额 ，单位：万元。
	private Double actualBackAmount;
	// 回款额偏差原因说明
	private String reasonActualBackAmountDeviat;
	// 未来销售最低均价，单位：万元。
	// private Double lowestAveragPriceInFuture;
	// 已售面积，单位：万平方米
	private Double soldAcreag;
	// 已售车位数，单位：个
	private int soldParkinSpace;
	// 动态均价，单位：万元。
	private Double dynamiAveragPrice;
	// 机动车车位动态均价，单位：万元。
	private Double averagPriceOfParkinSpace;
	// 每个业态的动态数据， 做页面显示，不参与接口传递
	@JSONField(serialize = false)
	private List<DynamiSalesDataExtend> dynamiExtend = new ArrayList<DynamiSalesDataExtend>();
	// 未售面积
	@JSONField(serialize = false)
	private BigDecimal unsoldArea;
	// 车位动态货值
	@JSONField(serialize = false)
	private BigDecimal cwDynamiValue;
	// 未售车位数
	@JSONField(serialize = false)
	private int cwUnsoldParkinSpace;
	// 车位未来销售最低均价
	@JSONField(serialize = false)
	private BigDecimal cwLowestAveragPriceInFuture;
	// 差额
	@JSONField(serialize = false)
	private BigDecimal difference;
	// 车位差额
	@JSONField(serialize = false)
	private BigDecimal cwDifference;

	/**
	 * difference.
	 *
	 * @return the difference
	 * @since JDK 1.6
	 */
	public BigDecimal getDifference() {
		return difference;
	}

	/**
	 * difference.
	 *
	 * @param difference
	 *            the difference to set
	 * @since JDK 1.6
	 */
	public void setDifference(BigDecimal difference) {
		this.difference = difference;
	}

	/**
	 * cwDifference.
	 *
	 * @return the cwDifference
	 * @since JDK 1.6
	 */
	public BigDecimal getCwDifference() {
		return cwDifference;
	}

	/**
	 * cwDifference.
	 *
	 * @param cwDifference
	 *            the cwDifference to set
	 * @since JDK 1.6
	 */
	public void setCwDifference(BigDecimal cwDifference) {
		this.cwDifference = cwDifference;
	}


	/**
	 * cwDynamiValue.
	 *
	 * @return the cwDynamiValue
	 * @since JDK 1.6
	 */
	public BigDecimal getCwDynamiValue() {
		return cwDynamiValue;
	}

	/**
	 * cwDynamiValue.
	 *
	 * @param cwDynamiValue
	 *            the cwDynamiValue to set
	 * @since JDK 1.6
	 */
	public void setCwDynamiValue(BigDecimal cwDynamiValue) {
		this.cwDynamiValue = cwDynamiValue;
	}

	/**
	 * cwUnsoldParkinSpace.
	 *
	 * @return the cwUnsoldParkinSpace
	 * @since JDK 1.6
	 */
	public int getCwUnsoldParkinSpace() {
		return cwUnsoldParkinSpace;
	}

	/**
	 * cwUnsoldParkinSpace.
	 *
	 * @param cwUnsoldParkinSpace
	 *            the cwUnsoldParkinSpace to set
	 * @since JDK 1.6
	 */
	public void setCwUnsoldParkinSpace(int cwUnsoldParkinSpace) {
		this.cwUnsoldParkinSpace = cwUnsoldParkinSpace;
	}
	/**
	 * cwLowestAveragPriceInFuture.
	 *
	 * @return the cwLowestAveragPriceInFuture
	 * @since JDK 1.6
	 */
	// public BigDecimal getCwLowestAveragPriceInFuture() {
	// return cwLowestAveragPriceInFuture;
	// }
	/**
	 * cwLowestAveragPriceInFuture.
	 *
	 * @param cwLowestAveragPriceInFuture
	 *            the cwLowestAveragPriceInFuture to set
	 * @since JDK 1.6
	 */

	// public void setCwLowestAveragPriceInFuture(
	// BigDecimal cwLowestAveragPriceInFuture) {
	// this.cwLowestAveragPriceInFuture = cwLowestAveragPriceInFuture;
	// }
	/**
	 * unsoldArea.
	 *
	 * @return the unsoldArea
	 * @since JDK 1.6
	 */
	public BigDecimal getUnsoldArea() {
		return unsoldArea;
	}

	/**
	 * unsoldArea.
	 *
	 * @param unsoldArea
	 *            the unsoldArea to set
	 * @since JDK 1.6
	 */
	public void setUnsoldArea(BigDecimal unsoldArea) {
		this.unsoldArea = unsoldArea;
	}

	/**
	 * dynamiExtend.
	 *
	 * @return the dynamiExtend
	 * @since JDK 1.6
	 */
	public List<DynamiSalesDataExtend> getDynamiExtend() {
		return dynamiExtend;
	}

	/**
	 * dynamiExtend.
	 *
	 * @param dynamiExtend
	 *            the dynamiExtend to set
	 * @since JDK 1.6
	 */
	public void setDynamiExtend(List<DynamiSalesDataExtend> dynamiExtend) {
		this.dynamiExtend = dynamiExtend;
	}

	public String getMonth() {
		return month;
	}

	public void setMonth(String month) {
		this.month = month;
	}

	public List<DynamiSalesIndustData> getIndust() {
		return indust;
	}

	public void setIndust(List<DynamiSalesIndustData> indust) {
		this.indust = indust;
	}

	public Double getDynamiValue() {
		return dynamiValue;
	}

	public void setDynamiValue(Double dynamiValue) {
		this.dynamiValue = dynamiValue;
	}

	public String getReasonDynamiValueDeviat() {
		return reasonDynamiValueDeviat;
	}

	public void setReasonDynamiValueDeviat(String reasonDynamiValueDeviat) {
		this.reasonDynamiValueDeviat = reasonDynamiValueDeviat;
	}

	public Double getActualSalesAmount() {
		return actualSalesAmount;
	}

	public void setActualSalesAmount(Double actualSalesAmount) {
		this.actualSalesAmount = actualSalesAmount;
	}

	public String getReasonActualSalesDeviat() {
		return reasonActualSalesDeviat;
	}

	public void setReasonActualSalesDeviat(String reasonActualSalesDeviat) {
		this.reasonActualSalesDeviat = reasonActualSalesDeviat;
	}

	public Double getActualBackAmount() {
		return actualBackAmount;
	}

	public void setActualBackAmount(Double actualBackAmount) {
		this.actualBackAmount = actualBackAmount;
	}

	public String getReasonActualBackAmountDeviat() {
		return reasonActualBackAmountDeviat;
	}

	public void setReasonActualBackAmountDeviat(String reasonActualBackAmountDeviat) {
		this.reasonActualBackAmountDeviat = reasonActualBackAmountDeviat;
	}

	// public Double getLowestAveragPriceInFuture() {
	// return lowestAveragPriceInFuture;
	// }
	//
	// public void setLowestAveragPriceInFuture(Double lowestAveragPriceInFuture) {
	// this.lowestAveragPriceInFuture = lowestAveragPriceInFuture;
	// }

	public Double getSoldAcreag() {
		return soldAcreag;
	}

	public void setSoldAcreag(Double soldAcreag) {
		this.soldAcreag = soldAcreag;
	}

	public int getSoldParkinSpace() {
		return soldParkinSpace;
	}

	public void setSoldParkinSpace(int soldParkinSpace) {
		this.soldParkinSpace = soldParkinSpace;
	}

	public Double getDynamiAveragPrice() {
		return dynamiAveragPrice;
	}

	public void setDynamiAveragPrice(Double dynamiAveragPrice) {
		this.dynamiAveragPrice = dynamiAveragPrice;
	}

	public Double getAveragPriceOfParkinSpace() {
		return averagPriceOfParkinSpace;
	}

	public void setAveragPriceOfParkinSpace(Double averagPriceOfParkinSpace) {
		this.averagPriceOfParkinSpace = averagPriceOfParkinSpace;
	}

	public List<TargetValue> getTargetValue() {
		return targetValue;
	}

	public void setTargetValue(List<TargetValue> targetValue) {
		this.targetValue = targetValue;
	}

}
